import java.io.File

fun main() {
    //takeIf返回的是接收者对象，当满足条件，再决定是否可以执行某项任务
    val result2 = File("D://i have a dream_copy.txt")
        .takeIf { it.exists() && it.canRead() }
        ?.readText()

    println(result2)

    //条件判断是false时，takeUnless才会返回原始接收者对象
    val result = File("E://i have a dream_copy.txt")
        .takeUnless { it.isHidden }
        ?.readText()

    println(result)
}